package com.etime.shycourse.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.etime.shycourse.dto.CourseAdviceLogDto;
import com.etime.shycourse.pojo.CourseAdviceLog;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface CourseAdviceLogMapper<page> extends BaseMapper<CourseAdviceLog> {
    /**
     * 分页查询课程咨询记录
     *
     * @param log  查询条件
     *             包含：（课程id,课程名称，机构id，时间段）
     * @param page
     * @return Page<CourseAdviceLog>
     */
    Page<CourseAdviceLog> selectCourseAdviceLogByPage(CourseAdviceLogDto log, Page<CourseAdviceLog> page);

    /**
     * 分页查询课程咨询记录的统计
     *
     * @param log  查询条件
     *             包含：（时间段，机构id）
     * @param page 分页
     * @return Page<CourseAdviceLogDto>
     */
    Page<CourseAdviceLogDto> selectCourseAdviceLogAdviceUserCountPage(CourseAdviceLogDto log, Page<CourseAdviceLog> page);

    /**
     * 查询所有机构 课程咨询的总记录
     *
     * @param log 查询条件
     *            包含：  包含：（时间段，机构id）
     * @return List<CourseAdviceLogDto>
     */
    List<CourseAdviceLogDto> selectCourseAdviceLogOrgCount(@Param("log") CourseAdviceLogDto log);
}
